<!DOCTYPE html>
            
<HTML>
<HEAD>
<meta name="booktitle" content="Developing Applications With Objective Caml" >
 <meta charset="ISO-8859-1"><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
<META name="GENERATOR" content="hevea 1.05-7 of 2000-02-24">
<META NAME="Author" CONTENT="Christian.Queinnec@lip6.fr">
<LINK rel=stylesheet type="text/css" href="videoc-ocda.css">
<script language="JavaScript" src="videoc.js"><!--
//--></script>
<TITLE>
 Summary
</TITLE>
</HEAD>
<BODY class="regularBody">
<A HREF="book-ora189.html"><IMG SRC ="previous_motif.gif" ALT="Previous"></A>
<A HREF="index.html"><IMG SRC ="contents_motif.gif" ALT="Contents"></A>
<A HREF="book-ora191.html"><IMG SRC ="next_motif.gif" ALT="Next"></A>
<HR>

<H2> Summary</H2>This chapter presented the new possibilities offered by 
distributed programming. Communication between programs
is accomplished with the fundamental mechanism of sockets, 
used by low-level Internet protocols. The action models used by 
clients and servers are asymmetric. Communication between
clients and servers use some notion of protocol, most often using 
plain text. Functional programming and object-oriented programming 
allow us to easily build distributed applications.
The client-server model lends itself to different software 
architectures, with two or three tiers, according to the distribution 
of tasks between them.<BR>
<BR>
<HR>
<A HREF="book-ora189.html"><IMG SRC ="previous_motif.gif" ALT="Previous"></A>
<A HREF="index.html"><IMG SRC ="contents_motif.gif" ALT="Contents"></A>
<A HREF="book-ora191.html"><IMG SRC ="next_motif.gif" ALT="Next"></A>
</BODY>
</HTML>
